<template>
	<view class="container">
		<view class="thumb">
			<image :src="info.product.thumbs_text" />
		</view>

		<view class="info">
			<view class="validate">
				<view class="icon">
					<image src="/static/images/validate_active.png"></image>
				</view>
				<view class="txt">
					您查询的产品是官方正品!
					<view>请放心使用！</view>
				</view>
			</view>

			<view class="line"></view>

			<view class="list">
				<view class="item">
					<view class="name">
						查询次数：
					</view>
					<view class="value">
						{{info.query_num}}
					</view>
				</view>

				<view class="item">
					<view class="name">
						您查询的防伪码：
					</view>
					<view class="value">
						{{info.query_code}}
					</view>
				</view>

				<view class="item">
					<view class="name">
						首次查询时间：
					</view>
					<view class="value">
						{{info.query_time}}
					</view>
				</view>

				<view class="item">
					<view class="name">
						防伪码所属产品：
					</view>
					<view class="value">
						{{info.product.name}}
					</view>
				</view>
			</view>

			<view class="code" v-if="info.query_qrcord_text">
				<!-- show-menu-by-longpress 开启长按图片显示识别小程序码菜单 -->
				 <image mode="aspectFit" show-menu-by-longpress :src="info.query_qrcord_text" />
			</view>
			<view class="action">
				<u-button type="success" text="更换防伪码" :customStyle="infoBtn" @click="getGenerate"></u-button>
			</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				code: '',
				business: {},
				info: {
					product: {}
				},
				infoBtn: {
					width: '40%',
				}
			}
		},
		onShow() {
			//获取本地存储
			var business = uni.getStorageSync('business') ? uni.getStorageSync('business') : {}

			// 判断对象是否为空
			if (Object.getOwnPropertyNames(business).length > 0) {
				this.business = business
			}
		},
		onLoad(options) {
			this.code = options.code ?? '';
			this.getInfoData()
		},
		methods: {
			async getInfoData() {
				let result = await this.$u.api.business.validator({
					code: this.code
				})
				if (result.code == 1) {
					this.info = result.data
				}
			},
			async getGenerate(){
				let result = await this.$u.api.business.generate({
					code: this.code
				})
				if (result.code == 1) {
					this.info = result.data
				}
			}
		}
	}
</script>

<style>
	page {
		background-color: #eee;
		padding-bottom: 10px;
	}

	.container {
		width: 95%;
		margin: 0 auto;
	}

	.thumb {
		width: 100%;
		height: 280px;
		border-radius: 10px;
		overflow: hidden;
	}

	.thumb image {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.info {
		background: #fff;
		border-radius: 10px;
		overflow: hidden;
		margin-top: 10px;
		padding: 0 10px 10px;
	}

	.info .validate {
		display: flex;
		align-items: center;
		padding: 10px 0 10px 10px;
	}

	.info .validate image {
		width: 50px;
		height: 50px;
		margin-right: 10px;
	}

	.info .validate .txt {
		font-size: 14px;
	}

	.info .validate .txt view {
		font-size: 12px;
		color: #9b9b9a;
		margin-top: 5px;
	}

	.info .line {
		width: 100%;
		height: 1px;
		background: #ebebeb;
		margin: 0 auto;
		margin-bottom: 10px;
	}

	.info .list .item {
		display: flex;
		justify-content: space-between;
		font-size: 14px;
		margin-bottom: 10px;
	}

	.info .list .item .name {
		color: #9b9b9a;
	}

	.info .code {
		width: 100%;
		height: 280px;
	}

	.info .code image {
		width: 100%;
		height: 100%;
	}

	.action {
		width: 100%;
		margin: 0 auto;
		margin-top: 10px;
	}
</style>